package commande;

import static org.junit.Assert.assertTrue;

import java.util.Properties;

import librairies.dictionnaire.interfaces.IDictionnaire;
import librairies.liste.interfaces.IListeE;
import librairies.liste.list.ListeDCE;
import modele.Mot;

import org.junit.Test;

import commande.outils.Processus;

public class OutilsTest 
{
	@Test
	public void getInstanceTest() //ok
	{
		Outils outil0 = Outils.getInstance();
		assertTrue(outil0 != null);
		
		Outils outil1 = Outils.getInstance();
		assertTrue(outil1.equals(outil0));
	}
	
	@Test
	public void addTest() //ok
	{
		Outils outil = Outils.getInstance();
		outil.add(null);
		outil.add(new Processus());
	}
	
	@Test
	public void getComprehensionDicoTest() //ok
	{
		Outils outil = Outils.getInstance();
		
		IDictionnaire<Mot> dico = outil.getComprehensionDico();
		assertTrue(dico.size() != 0);
	}
	
	@Test
	public void getComprehensionPropertiesTest() //ok
	{
		Outils outil = Outils.getInstance();

		Properties prop = outil.getComprehensionProperties();
		assertTrue(!prop.isEmpty());
	}
	
	@Test
	public void outTest() //ok
	{
		Outils outil = Outils.getInstance();

		outil.out((String) null);
		outil.out("phrase seule");
		
		IListeE<String> liste = new ListeDCE<String>();
		liste.add("premiere phrase");
		liste.add("deuxieme phrase");
		liste.add("troisieme phrase");
		
		outil.out((IListeE<String>) null);
		outil.out(liste);
	}
}
